package com.行为型模型.V备忘录模式.writeBox;

/**
 * 发起人 游戏角色
 */
public class GameRole {

    private int vit; //生命力    
    private int atk; //攻击力  
    private int def; //防御力
 //初始化状态    
    public void initState() {
        this.vit = 100;
        this.atk = 100;
        this.def = 100;
    }
    //战斗    
    public void fight() {
        this.vit = 0;
        this.atk = 0;
        this.def = 0;
    }
    //保存角色状态
    public RoleStateMemento saveState(){
        return new RoleStateMemento(vit,atk,def);
    }


    //恢复角色状态
    public void recoverState(RoleStateMemento roleStateMemento){
        this.vit=roleStateMemento.getVit();
        this.atk=roleStateMemento.getAtk();
        this.def=roleStateMemento.getDef();
    }

    public void stateDisplay(){
        System.out.println("角色生命力：" + vit);
        System.out.println("角色攻击力：" + atk);
        System.out.println("角色防御力：" + def);
    }


}
